package com.pxst.bank.req;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import javafx.beans.binding.LongExpression;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.validation.annotation.Validated;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * @author Chrissy
 * @description 虚拟银行对账单的新增接收子数据实体
 * @since 2023-11-06 19:13:45
 */
@ApiModel(value = "虚拟银行对账单的新增子数据实体")
@Data
@Validated
public class BankBillReq {

    @NotNull(message = "交易模式不能为空")
    @ApiModelProperty(value = "交易模式")
    private Integer txnMode;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "交易时间")
    private Date tradeTime;

    @ApiModelProperty(value = "转出金额")
    private BigDecimal amountDebit;

    @ApiModelProperty(value = "转入金额")
    private BigDecimal amountCredit;

    @NotNull(message = "活跃转出模式不能为空")
    @ApiModelProperty(value = "活跃转出模式")
    private String amountActive;

    @NotBlank(message = "交易金额不能为空")
    @ApiModelProperty(value = "交易金额")
    private BigDecimal balance;

    @NotBlank(message = "类型不能为空")
    @ApiModelProperty(value = "类型")
    private Integer type;

    @ApiModelProperty(value = "描述")
    private String description;

    @ApiModelProperty(value = "交易Id")
    private Long tradeId;

    @ApiModelProperty(value = "银行手续费")
    private BigDecimal bankFee;

    @ApiModelProperty(value = "VBS备注的content内容")
    private String remark;


}
